#include"December.h"
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <stdbool.h>


int main()
{
    // 插入 根据姓名找号码，根据号码找姓名  根据姓名删 根据号码删 全部打印
    int Ops=0;
    Dec *Array=InitDec(10);
    InsertTail(Array,(InitTel("孙超","17351512728")));
    InsertTail(Array,(InitTel("高树鑫","15352513728")));
    InsertTail(Array,(InitTel("宋轩","13251514372")));
    InsertTail(Array,(InitTel("张雪","12421334718")));
    InsertTail(Array,(InitTel("王子杨","16332112428")));
    InsertTail(Array,(InitTel("范浩伟","17351512728")));
    
    do
    {
        Sort(Array, CompareName);
        printf("请输入你要进行的操作\n");
        printf("1、输入\n2、根据姓名查找\n3、根据号码查找\n4、根据姓名删除\n5、根据号码删除\n6、全部打印\n0、退出\n");
        scanf("%d",&Ops);
                if(Ops==0) break;
        switch (Ops)
        {
        case 1:{
            char name[20];
            char number[20];
            printf("请输入你要添加的人员姓名：\n");
            scanf("%s",name);
            printf("请输入你要添加的电话号码：\n");
            scanf("%s",number);
            InsertTail(Array,(InitTel(name,number)));
            break;
        }
        case 2:{
            char name[20];
            printf("请输入你要查找的人员姓名：\n");
            scanf("%s",name);
            PrintTel(Search(Array,name));
            printf("信息查找成功：");
            break;
        }
        case 3:{
            char number[20];
            printf("请输入你要查找的电话号码：\n");
            scanf("%s",number);
            Tel *s1= FindTel(Array,number,IsNumberEqual);
            printf("信息查找成功：");
            PrintTel(s1);
            break;
        }
        case 4:{
            char name[20];
            printf("请输入你要删除的通讯录人员姓名:\n");
            scanf("%s",name);
            RemoveTel(Array, name, IsNameEqual);
            break;
        }
        case 5:{
            char number[20];
            printf("请输入你要删除的通讯录号码:\n");
            scanf("%s",number);
            RemoveTel(Array, number, IsNumberEqual);
            break;
        }
        case 6:{
            Sort(Array, CompareName);
            PrintArray(Array,PrintTel);
            break;
        }

        default:{printf("输入错误，请重新输入\n"); break;};
        }
    } while (Ops>=0);

    FreeArray(Array,FreeTel);
    return 0;
}